$(function() {
	var qinShiGrid = $("#QinShiGrid");
	// 初始化
	qinShiGrid.datagrid({
		url : 'qinshi/list',
		fit : true,
		border : false,
		rownumbers : true,
		pagination : true, // 是否显示分页栏
		columns : [ [
				{
					field : 'qinshi_name',
					title : '寝室名称',
					align : 'center',
					width : 100
				},
				{
					field : 'qinshi_count',
					title : '寝室总人数',
					align : 'center',
					width : 100
				},
				{
					field : 'user_name',
					title : '寝室长姓名',
					align : 'center',
					width : 100,
					formatter : function(value, row, index) {
						if (value == null) {
							return "暂无";
						}
						return value;
					}
				},
				{
					field : 'qinshi_state',
					title : '寝室状态',
					sortable : true,
					align : 'center',
					width : 100,
					formatter : function(value, row, index) {
						if (value == "1") {
							return "未住满";
						} else if (value == "2") {
							return "已住满";
						}else if (value == "3") {
							return "空寝室";
						}
					}
				},
				{
					field : 'ac',
					title : '操作',
					align : 'center',
					width : 150,
					formatter : function(value, row, index) {
						var bts = [];
						bts.push('<a data-index="' + index
								+ '" class="ctr edit">编辑</a>');
						bts.push('<a data-id="' + row.id + '" data-index="'
								+ index + '" class="ctr delete">删除</a>');
						return bts.join('');
					}
				} ] ],
		toolbar : [ {
			iconCls : 'icon-add',
			text : '添加新寝室',
			handler : function() {
				addQinshiform();
			}
		}]
	});

	var qinshiState = $("#qinshiState");
	$("#qinShiSearch").on('click', function() {
		qinShiGrid.datagrid("load", {
			qinshiState : qinshiState.val()=='所有寝室'? ''  : qinshiState.val()
		});
	});

	var gridPanel = qinShiGrid.datagrid("getPanel");
	gridPanel.on("click", "a.edit", function() {
		var index = this.dataset.index;
		// 如果只有下标，没有id的情况，要获取id
		var rows = qinShiGrid.datagrid("getRows");
		// 同下标获取对应行的数据对象
		var id = rows[index].qinshi_id;
		addQinshiform(id);
	}).on("click", "a.delete", function() {
		// 获取data-xxx绑定的标签属性数据
		var index = this.dataset.index;
		// 如果只有下标，没有id的情况，要获取id
		var rows = qinShiGrid.datagrid("getRows");
		// 同下标获取对应行的数据对象
		var id = rows[index].qinshi_id;
		$.messager.confirm("提示", "您确定要删除此数据?", function(r) {
			// 点击了确定按钮，r返回的结果为true
			if (r) {
				$.get("qinshi/delete/" + id, function(rs) {
					if (rs.success) {
						// 刷新表格
						qinShiGrid.datagrid("reload");
					} else {
						$.message.alert("提示", rs.message);
					}
				});
			}
		});
	});

	function addQinshiform(id) {
		// 创建窗口
		var dialog = $("<div/>").dialog(
				{
					href : 'jiaoxue/jx-add-qinshi' + (id ? ("/" + id) : ""),
					title : '添加寝室',
					height : '250',
					width : '350',
					modal : true,
					onClose : function() {
						// 窗口关闭的同时销毁此窗口
						$(this).dialog("destroy");
					},

					buttons : [ {
						iconCls : 'icon-save',
						text : '添加',
						handler : function() {
							// 获取到表单对象
							var addQinshiForm = $("#addQinshiForm");
							// 校验表单
							if (addQinshiForm.form('validate')) {
								// serialize方法可以获取到表单所有数据
								$.post("qinshi/save",
										addQinshiForm.serialize(),
										function(rs) {
											if (rs.success) {
												// 刷新数据表格
												qinShiGrid.datagrid("reload");
												// 关闭窗口
												dialog.dialog("close");
											} else {
												$.messager.alert("提示",
														rs.message);
											}
										});
							}
						}
					} ]
				});
	}
});